With the advent of the computer age, computer and software users have grown accustomed to user-friendly software applications that help them write, calculate, organize, prepare presentations, send and receive electronic mail, make music, and the like. For example, modern electronic word processing applications allow users to prepare a variety of useful documents. Modern spreadsheet applications allow users to enter, manipulate, and organize data. Modern electronic slide presentation applications allow users to create a variety of slide presentations containing text, pictures, data or other useful objects. Modern database applications allow users to store, organize and exchange large amounts of data.
Most of such applications provide a user interface through which a number of individual buttons or controls may be selected for providing desired functionalities in documents and/or data. For example, buttons or controls may be selected for saving data, formatting data, organizing data, copying data, and the like. Prior applications often provide keyboard accelerators for allowing a user to quickly select and execute a given functionality without navigating to an associated button or control in a menu of controls. Such keyboard accelerators also allow efficient access to functionality when an associated computer is not equipped with selection devices, such as mouse or electronic pen devices. In most prior applications, keyboard accelerators include a keyboard key selection associated with a text character in a text-based name of the selected control. For example, a common keyboard accelerator for executing a “File” command includes selecting the keyboard “Alt” or “Ctrl” keys followed by selecting an “F” key. If a secondary function contained in an associated “File” menu is desired, for example, a “Save” function, then a secondary keystroke, for example, the “S” key may be selected for executing the secondary function. Users are typically informed of the availability of such keyboard accelerators by the display of an underline marking under a character of a text-based control. For example, the character “F” may be underlined in a text-based control for a “File” function, and the character “S” may be underlined in a text-based control for a “Save” function for informing users as to the keyboard accelerator keystrokes required for selecting the associated controls.
A problem occurs, however, when new or different user interfaces are developed and utilized for software applications that do not utilize text-based names for many selectable functionality controls. Some user interfaces provide selectable controls as graphical symbols or icons or as a mixture of graphical icons and some text-based controls. The prior approach of informing users of the presence of a keyboard accelerator by underlining a text character in text-based controls is ineffective for such new or different user interfaces containing one or more graphical icon-based controls.
It is with respect to these and other considerations that the present invention has been made.